package view;

import controller.Controller;
/**
 * The interface IView determines a set of methods that must be implemented
 * by views of this search engine in order to ensure a uniform
 * communication across the different view types.
 */
public interface IView {
	
	/**
	 * Starts a query based on user input
	 */
	public void doSearch();

	/**
	 * Sets the controller
	 * 
	 * @param ctrl the controller to set
	 */
	public void setController(Controller ctrl);

	/**
	 * Presents the result of a search to the user
	 * 
	 * @param result array of strings to be presented for the user
	 */
	public void showResult(String[] result);
	
	/**
	 * Returns the class name of which this view is an instance
	 * 
	 * @return class name of this view instance
	 */
	public String toString();

}